package com.woniuxy.userapp.client.param;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.woniuxy.userapp.client.valid.DateFormat;
import lombok.Data;

import javax.validation.constraints.*;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * \* Created with IntelliJ IDEA.
 * \* User: Mr.zhou
 * \* Date: 2022/8/12
 * \* Time: 11:24
 * \* To change this template use File | Settings | File Templates.
 * \* Description:完善场馆信息
 * \
 */
@Data
public class AddVenueInfo {
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 前台账户id
     */
    private Integer frontAccountId;

    /**
     * 用户名
     */
//    @NotNull
//    private String userName;

    /**
     * 场馆名字
     */
    @NotNull
//    @Pattern(regexp = "[^(`~!@#-_$%^&*()+=|{}':;',\\[\\]<>/?~！@#￥%……&*（）——+|{}【】《》 ‘；：”“’。，、？)]")
    private String venueName;

    /**
     * 场馆地址
     */
    @NotNull
    private String address;

    /**
     * 场馆经度
     */
    @NotNull
    private BigDecimal venueLg;

    /**
     * 场馆纬度
     */
    @NotNull
    private BigDecimal venueLa;

    /**
     * 场馆电话
     */
    @NotNull
    @Pattern(regexp = "^1(3[0-9]|5[0-3,5-9]|7[1-3,5-8]|8[0-9])\\d{8}$")
    private String phone;

    /**
     * 是否开业(0:关业,1:开业)
     */
//    @Pattern(regexp = "^(?:0|1)$", message = "只支持0/1,0:关业 1:开业")
    private Integer openOrClose;

    /**
     * 评价
     */
    private Double score = 0.0;

    /**
     * 门店开业时间
     */
    @NotNull
//    @DateFormat(pattern = "yyyy-MM-dd",message = "格式为yyyy-MM-dd")
    private LocalDate storeOpen;

    /**
     * 每天的开业时间
     */
    @NotNull
    @DateFormat(pattern = "HH:mm:ss",message = "格式为HH:mm:ss")
    private String openTime;

    /**
     * 每天的关业时间
     */
    @NotNull
    @DateFormat(pattern = "HH:mm:ss",message = "格式为HH:mm:ss")
    private String closeTime;

    /**
     * 每周营业天数{1,0,1,1,1,1,1},表示周二不营业
     */
    @Size(min = 15,max = 15,message = "格式为{1,1,0,1,1,1,1},0表示不营业")
    private String weekTime;

    /**
     * 门店的面积 单位:平方米
     */
    @Min(value = 1)
    @Max(value = 100)
    private Integer area;

    /**
     * 有多少瑜伽教室
     */
    @Min(value = 1)
    @Max(value = 100)
    private Integer classroomNumber;

    /**
     * 有多少瑜伽老师
     */
    @Min(value = 1)
    @Max(value = 100)
    private Integer teacherNumber;


    /**
     * 支付宝账号
     */
    @NotNull
    private String alipayCode;

    private String walletPwd;
}
